home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Fritz: All Fritz
/
All Fritz.zip
/
All Fritz
/
FILES
/
PROGMISC
/
FPCDOCS.LZH
/
EQUCOLON.SEQ
< prev
next >
Wrap
Text File
|
1988-09-19
|
2KB
|
72 lines
\ EQUCOLON.SEQ words to modify VALUEs by Tom Zimmer
\ Link this file into the FILELIST chain.
FILES DEFINITIONS
VARIABLE EQUCOLON.SEQ
FORTH DEFINITIONS META IN-META
CODE %!> ( N1 --- ) \ Store to BODY field of following def
LODSW ES: \ 12 + 2
MOV BX, AX \ 2
POP 3 [BX] \ 17 + 9
NEXT END-CODE
CODE OFF> ( --- ) \ Store to BODY field of following def
LODSW ES: \ 12 + 2
MOV BX, AX \ 2
MOV 3 [BX], # 0 WORD
NEXT END-CODE
CODE ON> ( --- ) \ Store to BODY field of following def
LODSW ES: \ 12 + 2
MOV BX, AX \ 2
MOV 3 [BX], # -1 WORD
NEXT END-CODE
CODE %@> ( --- N1 ) \ Fetch BODY field of following def
LODSW ES:
MOV BX, AX
PUSH 3 [BX]
NEXT END-CODE
: =: ( N1 T1 --- )
STATE @
IF COMPILE %!>
ELSE ' >BODY !
THEN ; IMMEDIATE
CODE INCR> ( --- )
LODSW ES:
MOV BX, AX
INC 3 [BX] WORD
NEXT END-CODE
CODE DECR> ( --- )
LODSW ES:
MOV BX, AX
DEC 3 [BX] WORD
NEXT END-CODE
CODE +!> ( N1 --- )
POP CX
LODSW ES:
MOV BX, AX
ADD 3 [BX], CX WORD
NEXT END-CODE
: !> ( N1 T1 --- )
STATE @
IF COMPILE %!>
ELSE ' >BODY !
THEN ; IMMEDIATE
: @> ( N1 T1 --- )
STATE @
IF COMPILE %@>
ELSE ' >BODY @
THEN ; IMMEDIATE